Simple Authentication and Security Layer
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
Simple Authentication and Security Layer (SASL) is a framework for authentication and data security in Internet protocols. It decouples authentication mechanisms from application protocols, in theory allowing any authentication mechanism supported by SASL to be used in any application protocol that uses SASL. Authentication mechanisms can also support proxy authorization, a facility allowing one user to assume the identity of another. They can also provide a data security layer offering data integrity and data confidentiality services. DIGEST-MD5 provides an example of mechanisms which can provide a data-security layer. Application protocols that support SASL typically also support Transport Layer Security (TLS) to complement the services offered by SASL.
John Gardiner Myers wrote the original SASL specification (RFC 2222) in 1997. In 2006, that document was replaced by RFC 4422 authored by Alexey Melnikov and Kurt D. Zeilenga. SASL, as defined by RFC 4422 is an IETF Standard Track protocol and is, as of 2006, a Proposed Standard.
Contents
• See also
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
SASL mechanisms
A SASL mechanism implements a series of challenges and responses. Defined SASL mechanismscite-ref-1[1] include:
EXTERNAL
ANONYMOUS
for unauthenticated guest access
PLAIN
OTP
a one-time password mechanism. Obsoletes the SKEY mechanism.
SKEY
an S/KEY mechanism.
a simple challenge-response scheme based on HMAC-MD5.
(RFC 5802), modern challenge-response scheme based mechanism with channel binding support
an NT LAN Manager authentication mechanism
GS2-
BROWSERID-AES128
for Mozilla Persona authenticationcite-ref-4[4]
EAP-AES128
for GSS EAP authenticationcite-ref-5[5]
MSN Chat GateKeeper (& GateKeeperPassport)
SASL-aware application protocols
As of 2012 protocols currently supporting SASL include:
• Advanced Message Queuing Protocol (AMQP)
• Internet Message Access Protocol (IMAP)
• Internet Relay Chat (IRC) (with IRCX or the IRCv3 SASL extension)
• libvirt
• ManageSieve (RFC 5804)
• Post Office Protocol (POP)
• Simple Mail Transfer Protocol (SMTP)
• Subversion svn protocol
See also
References
cite-note-11. ↑ "Simple Authentication and Security Layer (SASL) Mechanisms". iana.org.
cite-note-22. ↑ RFC 6331
cite-note-33. ↑ citerefsimon-josefssonSimon Josefsson. "Using GSS-API Mechanisms in SASL: The GS2 Mechanism Family".
cite-note-44. ↑ citerefluke-howardLuke Howard. "A SASL and GSS-API Mechanism for the BrowserID Authentication Protocol".
cite-note-55. ↑ citerefsam-hartman2013Sam Hartman (December 2013). "A GSS-API Mechanism for the Extensible Authentication Protocol".
cite-note-77. ↑ "Generic Security Service Application Program Interface (GSSAPI)/Kerberos/Simple Authentication and Security Layer (SASL) Service Names". iana.org.
cite-note-88. ↑ "Request for allocation of new security type code for SASL auth". realvnc.com.
External links
• The IETF SASL Working Group, chartered to revise existing SASL specifications, as well as to develop a family of GSSAPI mechanisms
• Cyrus SASL, a free and portable SASL library providing generic security for various applications
• Dovecot SASL, an SASL implementation
• Java SASL API Programming and Deployment Guide